<%@page import="com.pizzaria.util.Util"%>
<%@page import="com.pizzaria.bean.PedidoDAO"%>
<%@page import="com.pizzaria.bean.Pedido"%>
<%@page import="com.pizzaria.bean.FuncionarioDAO"%>
<%@page import="com.pizzaria.bean.Funcionario"%>
<%@page import="com.pizzaria.bean.ClienteDAO"%>
<%@page import="com.pizzaria.bean.Cliente"%>
<%@page import="com.pizzaria.servlet.ListResource"%>
<%@page import="com.pizzaria.bean.Produto"%>
<%@page import="java.util.List"%>
<%@page import="com.pizzaria.bean.ProdutoDAO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link href="style.css" rel="stylesheet" />
<title>Pizzaria</title>
<link href="script/ui/css/ui-lightness/jquery-ui-1.8.20.custom.css" rel="stylesheet" />
<script src="script/ui/jquery-1.7.2.min.js"></script>
<script src="script/ui/jquery-ui-1.8.20.custom.min.js"></script>
<script>
	function newItem(u){
		window.location = u + '.jsp';
	}
	
	function deleteItem(type){
		var msg = $("#msg");
		msg.html('Você tem certeza que deseja deletar este(s) item(s)?');
		msg.dialog({
			resizable: false,
			modal: true,
			buttons: {
				"Sim": function() {
					var res = 'type=' + type;
					$('#container input:checked').each(function(e){
						if($(this).attr('id'))
							res += '&id=' + $(this).attr('id');
					});
					$.ajax({
						url: 'rest/crud/delete',
						data: res,
						type: 'POST',
						success:function(e){
							msg.html(e);
							msg.dialog({
								resizable: false,
								modal: true,
								buttons: {
									"OK": function() {
										$(this).dialog("close");
									}
								}
							});
							
							$('#container input:checked').each(function(e){
								$(this).attr('checked', false);
							});
							window.location.reload();
						},
						error:function(e){
							msg.html(e);
							msg.dialog({
								resizable: false,
								modal: true,
								buttons: {
									"OK": function() {
										$(this).dialog("close");
									}
								}
							});
						}
					});
					$(this).dialog("close");
				},
				"Não": function() {
					$(this).dialog("close");
				}
			}
		});
	}
</script>
</head>
<body>
	<div id="top">
		<h1>Pizzaria</h1>
	</div>
	<div id="left">
		<div id="menu">
			<a href="list.jsp?type=func">Funcionário</a>
			<a href="list.jsp?type=cli">Cliente</a>
			<a href="list.jsp?type=ped">Pedido</a>
			<a href="list.jsp?type=prod">Produto</a>
		</div>
	</div>
	<div id="conteudo">
		<%
		String type = request.getParameter("type");
		%>
		<div id="path">
			<%
				switch(type.hashCode()) {
				case 3449687: //produto
					out.print("Produto");
					break;
				case 98592: //cliente
					out.print("Cliente");
					break;
				case 3154628: //funcionario
					out.print("Funcionário");
					break;
				case 110863: //pedido
					out.print("Pedido");
					break;
				} 
			%>
			>
		</div>
		<div id="toolbar">
			<input type="button" value="Novo" onclick="javascript: newItem('<%=type %>');"/><input type="button" value="Deletar" onclick="javascript: deleteItem('<%=type %>');"/>
		</div>
		<div id="content">
			<div id="container">
			<%
				switch(type.hashCode()) {
				case 3449687: //produto
					List<Produto> ps = ProdutoDAO.getAll();
					if(ps != null)
						for(Produto p : ps){
							out.print(ListResource.getDivList(type, p.getId(), p.getNome()));
						}
					break;
				case 98592: //cliente
					List<Cliente> cs = ClienteDAO.getAll();
					if(cs != null)
						for(Cliente p : cs){
							out.print(ListResource.getDivList(type, p.getId(), p.getNome()));
						}
					break;
				case 3154628: //funcionario
					List<Funcionario> fs = FuncionarioDAO.getAll();
					if(fs != null)
						for(Funcionario p : fs){
							out.print(ListResource.getDivList(type, p.getId(), p.getNome()));
						}
					break;
				case 110863: //pedido
					List<Pedido> pe = PedidoDAO.getAll();
					if(pe != null)
						for(Pedido p : pe){
							out.print(ListResource.getDivList(type, p.getId(), Util.formatDateTime(p.getData()) + " - " + p.getCliente().getNome(), p.isEntregue()) );
						}
					break;
				} 
			%>
			</div>
		</div>
	</div>
	
	<div id='msg' style='display:none;'>Você tem certeza que deseja deletar este(s) item(s)?</div>
</body>
</html>